In order to control a communication path in a network system, a path control method adopting an OpenFlow technique as a control protocol for communication equipment has been recently developed. A network whose path is controlled according to the OpenFlow technique is referred to as an OpenFlow network.
In the OpenFlow network, a controller such as an OFC (OpenFlow Controller) operates each OpenFlow table of a switch such as OFS (OpenFlow Switch) to control behaviors of the switches. The controller is connected to the switch through a secure channel (Secure Channel) to control the switch by using a control message conforming to an OpenFlow protocol.
The switch in the OpenFlow network is an edge switch or a core switch that constitutes the OpenFlow network and is under control of the controller. A series of types of processing of a packet from reception of the packet at an input-side edge switch in the OpenFlow network to transmission of the packet at an output-side edge switch in the OpenFlow network is referred to as a flow.
The OpenFlow table is a table in which a flow entry is registered that defines a predetermined processing content (action) to be performed to a packet (communication data) conforming to a predetermined match condition (rule).
The rule of the flow entry is defined according to various combinations of some or all of a destination address, a source address, a destination port, and a source port, which are included in a header field of each layer of protocol hierarchy in the packet, and can be distinguished. The above-mentioned addresses include a MAC address (Media Access Control Address) and an IP address (Internet Protocol Address). In addition, information on an ingress port can be also used as the rule of the flow entry.
The action of the flow entry indicates an operation such as “output to a particular port”, “discard”, and “rewrite a header”. For example, when identification information of an output port (for example, output port number) is presented in the action of the flow entry, the switch outputs a packet to the port, and when the identification information of the output port is not presented, the switch discards the packet. Alternatively, when header information is presented in the action of the flow entry, the switch rewrites a header of the packet on the basis of the header information.
The switch in the OpenFlow network executes the action of the flow entry to a packet group (packet sequence) that conforms to a rule of the flow entry.
Details of the OpenFlow switch are described in Non-Patent Literatures 1 and 2.
A large-capacity OpenFlow table is required to control a large amount of flow on the network. In the present circumstances, the TCAM (Ternary Content Addressable Memory) used for the OpenFlow table does not have a large capacity, and therefore, a necessary and sufficient amount of capacity is not ensured. Further, it is difficult to increase the capacity of each table (mainly TCAM) itself of the switch used in the OpenFlow table.
As one of methods of solving the above-mentioned problem, an external TCAM can be used, but this takes costs. Moreover, in equipment for high-speed transfer such as 10G multi-port (network equipment having a plurality of ports, which can correspond to a data transfer rate of 10G bit/second), the external TCAM cannot be employed. Now, there is no external TCAM capable of operating in the 10G switch at least.